Table 8–1: Support for multi-byte characters
|
Product
|
Multi-byte support
|
|
AppBuilder
|
The AppBuilder—except for the Character Run window—supports double-byte and UTF-8 characters.
Widgets created with the AppBuilder can have double-byte or UTF-8 characters in labels and in text.
The Character Run window does not support double-byte or UTF-8 characters.
|
|
AppServer
|
The AppServer supports double-byte and UTF-8 characters.
|
|
Application Compiler
|
The Application Compiler supports double-byte and UTF-8 characters. That is, the 4GL source code that the Application Compiler compiles can contain double-byte and UTF-8 characters, and the resulting r-code supports double-byte and UTF-8 characters.
|
|
Clients (graphical, character, and batch)
|
The graphical client supports double-byte characters and UTF-8 characters.
The UNIX character client supports double-byte characters but not UTF-8 characters.
The Windows character client does not support multi-byte characters.
The batch client (started with the command prowin32 -b) supports multi-byte characters.
|
|
Data Dictionary
|
The OpenEdge Data Dictionary supports multi-byte characters.
|
|
DataServers
|
The DataServer for Oracle supports double-byte characters if the ORACLE DBMS is set up for Native Language Support (NLS). For more information on NLS, see the Oracle documentation.
The DataServer for Oracle does not support UTF-8.
|
|
HLC Applications
|
An HLC program can have double-byte and triple-byte characters.
Since Progress does not validate strings from HLC programs, you must ensure that multi-byte characters are formed correctly and that they are not split.
For example, Progress searches each character string for the NULL terminator. For each multi-byte character in the string, Progress searches only the lead byte. If the string ends in a multi-byte character and the NULL terminator resides (mistakenly) in a byte other than the position for a lead byte, Progress misses it and does not detect the end of the string correctly.
|
|
Procedure Editor
|
On Windows, the Procedure Editor supports double-byte and UTF-8 characters; on UNIX, only double-byte characters.
To write a multi-byte Progress 4GL application, you can use any text editor that supports multi-byte characters. That is, you can use a multi-byte Unicode editor if you prefer.
|
|
Report Builder
|
The Report Builder does not support double-byte or UTF-8 characters.
|
|
SQL
|
SQL supports double-byte and UTF-8 characters.
|
|
Translation Management System
|
The Translation Management System can manage translations to and from languages that use double-byte and UTF-8 code pages.
|
|
WebClient™
|
WebClient supports double-byte characters and UTF-8 characters.
|
|
WebSpeed
|
WebSpeed fully supports multi-byte characters.
|